
#ifndef _MEMBER_BScrollBar_H_
#define _MEMBER_BScrollBar_H_

#include <BPointArray>
#include <BIcon>
#include <BButton>
#include <BScrollBar>

#define scrollbar_member(scrollbar)	((member_BScrollBar*)((BScrollBar*)scrollbar)->_ptr)

namespace BWE
{
	class member_BScrollBar : public BObject
	{
		friend class BScrollBar;
	public:
		member_BScrollBar(BScrollBar* scrollBar);
		~member_BScrollBar();

		void freshRects();

		void slotButtonClicked(BObject* object);

		BScrollBar*		boss;
		int				value;
		int				page;
		BRange			range;
		int				step;
		BSize			handleSize;
		Orientation		orientation;
		BHolder<BButton>	decreaseButton;
		BHolder<BButton>	increaseButton;

		bool			dirty;
		bool			autoTop;
		bool			autoLeft;
		bool			autoRight;
		bool			autoBottom;
		bool			hoverHandle;
		BRect			handleRect;
		bool			draging;
		bool			pressed;
		BPoint			pressPos;
		int				pressValue;
		BPointfArray	handlePoints;
	};
}

#endif